from mediator . notifications_from . application import mediator_notifications_from_application
from mediator . notifications_from . browser import mediator_notifications_from_browser
from mediator . notifications_from . clockwork import mediator_notifications_from_clockwork
from mediator . notifications_from . copy_menu import mediator_notifications_from_copy_menu
from mediator . notifications_from . creation_menu import mediator_notifications_from_creation_menu
from mediator . notifications_from . edit_menu import mediator_notifications_from_edit_menu
from mediator . notifications_from . editor import mediator_notifications_from_editor
from mediator . notifications_from . filesystem import mediator_notifications_from_filesystem
from mediator . notifications_from . gui import mediator_notifications_from_gui
from mediator . notifications_from . knowledge_base import mediator_notifications_from_knowledge_base
from mediator . notifications_from . knowledge_base_directory import mediator_notifications_from_knowledge_base_directory
from mediator . notifications_from . knowledge_base_fetcher import mediator_notifications_from_knowledge_base_fetcher
from mediator . notifications_from . main_menu import mediator_notifications_from_main_menu
from mediator . notifications_from . open_menu import mediator_notifications_from_open_menu
from mediator . notifications_from . rename_menu import mediator_notifications_from_rename_menu
from mediator . notifications_from . save_as_menu import mediator_notifications_from_save_as_menu
from mediator . notifications_from . table import mediator_notifications_from_table
from mediator . notifications_from . welcome import mediator_notifications_from_welcome
from mediator . interface_of . application import mediator_interface_of_application
from mediator . interface_of . browser import mediator_interface_of_browser
from mediator . interface_of . clockwork import mediator_interface_of_clockwork
from mediator . interface_of . copy_menu import mediator_interface_of_copy_menu
from mediator . interface_of . creation_menu import mediator_interface_of_creation_menu
from mediator . interface_of . edit_menu import mediator_interface_of_edit_menu
from mediator . interface_of . editor import mediator_interface_of_editor
from mediator . interface_of . filesystem import mediator_interface_of_filesystem
from mediator . interface_of . gui import mediator_interface_of_gui
from mediator . interface_of . knowledge_base import mediator_interface_of_knowledge_base
from mediator . interface_of . knowledge_base_directory import mediator_interface_of_knowledge_base_directory
from mediator . interface_of . knowledge_base_fetcher import mediator_interface_of_knowledge_base_fetcher
from mediator . interface_of . localization import mediator_interface_of_localization
from mediator . interface_of . main_loop import mediator_interface_of_main_loop
from mediator . interface_of . main_menu import mediator_interface_of_main_menu
from mediator . interface_of . menu import mediator_interface_of_menu
from mediator . interface_of . open_menu import mediator_interface_of_open_menu
from mediator . interface_of . rename_menu import mediator_interface_of_rename_menu
from mediator . interface_of . resources import mediator_interface_of_resources
from mediator . interface_of . save_as_menu import mediator_interface_of_save_as_menu
from mediator . interface_of . table import mediator_interface_of_table
from mediator . interface_of . welcome import mediator_interface_of_welcome

class mediator \
    ( mediator_notifications_from_application
    , mediator_notifications_from_browser
    , mediator_notifications_from_clockwork
    , mediator_notifications_from_copy_menu
    , mediator_notifications_from_creation_menu
    , mediator_notifications_from_edit_menu
    , mediator_notifications_from_editor
    , mediator_notifications_from_filesystem
    , mediator_notifications_from_gui
    , mediator_notifications_from_knowledge_base
    , mediator_notifications_from_knowledge_base_directory
    , mediator_notifications_from_knowledge_base_fetcher
    , mediator_notifications_from_main_menu
    , mediator_notifications_from_open_menu
    , mediator_notifications_from_rename_menu
    , mediator_notifications_from_save_as_menu
    , mediator_notifications_from_table
    , mediator_notifications_from_welcome
    , mediator_interface_of_application
    , mediator_interface_of_browser
    , mediator_interface_of_clockwork
    , mediator_interface_of_copy_menu
    , mediator_interface_of_creation_menu
    , mediator_interface_of_edit_menu
    , mediator_interface_of_editor
    , mediator_interface_of_filesystem
    , mediator_interface_of_gui
    , mediator_interface_of_knowledge_base
    , mediator_interface_of_knowledge_base_directory
    , mediator_interface_of_knowledge_base_fetcher
    , mediator_interface_of_localization
    , mediator_interface_of_main_loop
    , mediator_interface_of_main_menu
    , mediator_interface_of_menu
    , mediator_interface_of_open_menu
    , mediator_interface_of_rename_menu
    , mediator_interface_of_resources
    , mediator_interface_of_save_as_menu
    , mediator_interface_of_table
    , mediator_interface_of_welcome
    ) :
    def register_modules ( self , ** keyword_args ) :
        class _attributes_from_args :
            def __init__ ( self , ** keyword_args ) :
                for key , value in keyword_args . items ( ) :
                    setattr ( self , key , value )
        self . _modules = _attributes_from_args ( ** keyword_args )
    def start ( self ) :
        self . _modules . application . start ( )
        self . _modules . menu_logic . start ( )
        self . _modules . logic . start ( )
